home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 25 / CU Amiga Magazine's Super CD-ROM 25 (1998)(EMAP Images)(GB)(Track 1 of 2)[!][issue 1998-08].iso / CUCD / Programming / GMS / GMSDev / Includes / desktop / window.h < prev   
Encoding:
C/C++ Source or Header  |  1998-05-10  |  2.4 KB  |  63 lines

  1. #ifndef DESKTOP_WINDOW_H
  2. #define DESKTOP_WINDOW_H TRUE
  3.  
  4. /*
  5. **  $VER: window.h V1.0
  6. **
  7. **  Window Definitions.
  8. **
  9. **  (C) Copyright 1996-1998 DreamWorld Productions.
  10. **      All Rights Reserved.
  11. */
  12.  
  13. #ifndef DPKERNEL_H
  14. #include <dpkernel/dpkernel.h>
  15. #endif
  16.  
  17. /****************************************************************************
  18. ** Window.  NB: All windows cooperate with the desktop so you
  19. ** need an Exclusive lock on a window before doing anything
  20. ** to it.
  21. **
  22. ** The window events are:
  23. **
  24. **  OnClick:
  25. **  OffClick:
  26. */
  27.  
  28. #define TAGS_WINDOW ((ID_SPCTAGS<<16)|(ID_WINDOW))
  29. #define VER_WINDOW  1
  30.  
  31. struct Window {
  32.   struct Head Head;               /* [--] Private */
  33.   struct MenuBar   *MenuBar;      /* [RI] Optional */
  34.   struct Bob       *Pointer;      /* [RI] If pointer should change from Desktop */
  35.   struct Desktop   *Desktop;      /* [R-] The desktop that owns the window */
  36.   struct ScrollBar *VertScroll;   /* [R-] Pointer to the vertical scroll bar */
  37.   struct ScrollBar *HorzScroll;   /* [R-] Pointer to the horizontal scroll bar */
  38.   struct Bitmap    *BackImage;    /* [RI] Background wallpaper or tiles */
  39.   struct Font      *TitleFont;    /* [RI] The font type for our title bar */
  40.   WORD   AreaWidth;               /* [RI] Maximum area width of our window */
  41.   WORD   AreaHeight;              /* [RI] Maximum area height of our window */
  42.   WORD   Width;                   /* [RI] Current width of our window */
  43.   WORD   Height;                  /* [RI] Current height of our window */
  44.   WORD   XCoord;                  /* [RI] X coordinate of the window */
  45.   WORD   Ycoord;                  /* [RI] Y coordinate of the window */
  46.   BYTE   *Title;                  /* [RI] "My Window" */
  47.   LONG   Gadgets;                 /* [RI] Gadget flags like GAD_CLOSE */
  48.   LONG   Style;                   /* [RI] Look and feel, eg STYLE_SUNKEN */
  49.   LONG   BackgroundRGB;           /* [RI] The colour of the background */
  50.   LONG   BackOptions;             /* [RI] WBK_TILE, WBK_CENTRE */
  51.   struct ObjectChain *Children;   /* [R-] A chain of all children inside the window (icons etc). */
  52. };
  53.  
  54.  
  55. #define GAD_CLOSE    0x00000001  /* Show the close button */
  56. #define GAD_ICONIFY  0x00000002  /* Show the iconify button */
  57. #define GAD_MAXIMISE 0x00000004  /* Show the maximise button */
  58. #define GAD_RESIZE   0x00000008  /* The resize gadget */
  59.  
  60. #define WBK_TILE     0x00000001  /* Tile the background bitmap */
  61. #define WBK_CENTRE   0x00000002  /* Centre the background bitmap */
  62.  
  63.